\section{Question 1D}

\subsection{Context Diagram}

\begin{figure}[htp]
	\centering
	\includegraphics[width=\textwidth]{q1d-context-diagram.pdf}
	\caption{Context Diagram}\label{fig:q1d-context-diagram}
\end{figure}

The context diagram shows a high-level view of the system, highlighting the information flow across the system boundary (i.e. with external entities).

It shows that customers can only input the details of an issue into the system, and fetch the status of those issues, or change notifications.

PC Gurus staff however, can input issue details and priorities, and also customer details into the system. They can fetch a list of issues, the status of an issue, or customer details from the system.

\begin{landscape}
	\begin{figure}[htp]
		\centering
		\includegraphics[width=24cm]{q1d-dfd-level0.pdf}
		\caption{Level 0 DFD}\label{fig:q1d-dfd-level0}
	\end{figure}
\end{landscape}

The Level-0 DFD shows the first level of detail of the system itself. There are two data stores in the system: \verb!Issues! and \verb!Customers!. The diagram shows how information flows in the following situations:

\begin{description}

\item[Raise new issue]
	Both customers and staff members can raise a new issue, and the details of that issue are stored in the \verb!Issues! data store.

\item[Check issue status]
	Both customers and staff members can check the status of an existing issue, the information being retrieved from the \verb!Issues! data store.

\item[Escalate issue]
	PC Gurus staff can escalate an issue to ``technician required'' priority, with this being saved back to the \verb!Issues! data store.

\item[Get list of issues]
	PC Gurus staff can retrieve a list of issues, with the information being gathered from the \verb!Issues! data store.

\item[Add customer]
	PC Gurus staff can add customers to the system, with the information being saved to the \verb!Customers! data store.

\item[Add customer]
	PC Gurus staff can retrieve customers details, with this information being gathered from the \verb!Customers! data store.

\end{description}
